码迷,mamicode.com
首页 > 其他好文 > 详细

第二次作业

时间:2018-04-08 13:13:32      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:调试   sas   字符   logs   知识点   public   turn   stdio.h   地址   

6-7 删除字符串中数字字符
1.设计思路
(1)第一步:了解指针的用法;
第二步:根据题意编写函数;
第三步:用两个指针,遇到数字字符不动,遇到非数字字符存入。
(2)流程图

2.实验代码

#include "stdio.h"
void delnum(char *s);
int main ()
{ char item[80];
gets(item);
 delnum(item);
 printf("%s\n",item);
 return 0;
}
void delnum(char *s){
    int i=0,j=0;
    for(i=0,j=0;*(s+i)!=‘\0‘;i++)
    {
    if(s[i]<‘0‘||s[i]>‘9‘)
    {
    s[j]=s[i];
    j++;
    }
    }
    s[j]=‘\0‘;
}

3.本题调试过程碰到问题及解决办法
错误信息1:无
错误原因:无
改正方法:无
git地址:https://coding.net/u/zhong123456/p/pta2/git/blob/master/1?public=true
技术分享图片

6-8 统计子串在母串出现的次数
1.设计思路
(1)第一步:根据已知题意,观察已给程序,了解题中各个参数的意义。
第二部;设计简单的函数,执行题中所需功能。
第三部:借用strlen()函数统计字符串长度,再进行判断。
(2)流程图

2.实验代码

#include<stdio.h>
int fun(char *str,char *substr);
int main()
{ char str[81]="asdasasdfgasdaszx67asdmklo",substr[4]="asd";
 int n;
 n=fun(str,substr);
 printf("n=%d\n",n);
 return 0;
}
int fun(char * str, char * substr)
{
    unsigned int i, n = 0;
    for(i = 0; i < strlen(str); i++)
        if((str[i] == substr[0]) && (str[i + 1] == substr[1]) && (str[i + 2] == substr[2]))
            ++n;

    return n;
}

3.本体调试过程碰到问题及解决办法
错误信息1:无
错误原因1:无
git地址:https://coding.net/u/zhong123456/p/pta2/git/blob/master/2?public=true
技术分享图片

6-9 字符串中除首尾字符外的其余字符按降序排列
1.设计思路
(1)第一步:根据已知题意,观察已给程序,了解题中各个参数的意义。
第二部;设计简单的函数,执行题中所需功能。
第三部:上机运行程序,检查程序对错。
(2)流程图

2.实验代码

#include <stdio.h>
int fun(char *s,int num);
int main()
{
 char s[10];
 gets(s);
 fun(s,7);
 printf("%s",s);
 return 0;
 }
 int fun(char *s,int num){
    int i,j;
     char t;
    for(i=1;i<num-1;i++) {
        for(j=num-2;j>i;j--){
            if(*(s+j)>*(s+j-1)){
                t=*(s+j);
                *(s+j)=*(s+j-1);
                *(s+j-1)=t;
             }
        }
    }
}

3.本体调试过程碰到问题及解决办法
错误信息1:无
错误原因1:无
git地址:https://coding.net/u/zhong123456/p/pta2/git/blob/master/3?public=true
技术分享图片

7-1 输出学生成绩
1.设计思路
(1)第一步:根据已知题意,观察已给程序,了解题中各个参数的意义。
第二部;设计简单的函数,执行题中所需功能。
第三部:上机运行程序,检查程序对错。
(2)流程图

2.实验代码

#include<stdio.h>
#include<stdlib.h>
int main ()
{
    int n,i,*p;
    double max=0,min=999,average=0;
    scanf("%d",&n);
    if((p=(int*)calloc(n,sizeof(int)))==NULL){
    exit(1);
    }
    for(i=0;i<n;i++)
   ![](https://images2018.cnblogs.com/blog/1358214/201804/1358214-20180408122151518-446991032.png)

     scanf("%d",p+i);
        for(i=0;i<n;i++)
            average=average+*(p+i);
                for(i=0;i<n;i++)
        {

        if(*(p+i)>max)
            max=*(p+i);
        }
        for(i=0;i<n;i++){

        if(*(p+i)<min)
            min=*(p+i);
            }

            free(p);
        printf("average = %0.2f\n",average/n);
        printf("max = %0.2f\n",max);
        printf("min = %0.2f\n",min);
}

3.本体调试过程碰到问题及解决办法
错误信息1:多种错误。
错误原因1:没有用明白指针
git地址:https://coding.net/u/zhong123456/p/pta2/git/blob/master/4?public=true

这两周来所有PTA作业中题目所使用的知识点:
1.字符串与指针的关系
2.函数指针调用函数
3.指针作函数参数
4.了解字符型函数
请用表格和折线图呈现你本周(3/26 8:00~4/9 8:00)的代码行数和所用时间、博客字数和所用时间
技术分享图片

第二次作业

标签:调试   sas   字符   logs   知识点   public   turn   stdio.h   地址   

原文地址:https://www.cnblogs.com/houyuze/p/8744266.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!