欢迎来到天天文库
浏览记录
ID:39963274
大小:366.31 KB
页数:31页
时间:2019-07-16
《c语言复习pptc习题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、若干个数中找最大最小一个n位数逐位分解设计菜单程序数组各元素分类统计两个数组对应元素比较大小插入、逆序存放、排序查找二维数组操作常规解题算法1一、若干个数中找最大最小定义一个变量存放最大值,一个变量存放最小值,循环比较,找出最大最小值。用简单变量处理输入第一个数maxmin循环i=2~n输入一个数aif(a>max)max=a;if(amax)max=a[i];if(a[i]2、班某门课平均成绩、最高、最低。#defineN10main(){inta[N],i,max,min;floatsum=0;for(i=0;imax)max=a[i];if(a[i]3、成分离工作,每次k%10就得到k的最低位的值,k/10就去掉k的最低位,如此循环,直到k=0为止。5用变量main(){longn,d;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d=n%10;printf(“%d”,d);n=n/10;}}例2:输入一个最多8位的正整数,将各数按位颠倒输出。用数组main(){longn,d[8];inti,k=0;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d[k++]=n%10;n=n/10;}for(i=0;i4、tf(“%d”,d[i]);}6三、设计菜单程序步骤如下:1显示菜单项目2等待用户输入选择信息3判断选择信息,进行分支处理由于这类问题属于“根据一个变量的不同值进行多路分支”的问题,所以用switch语句比较合适。7例3:设计一个简单的菜单选择程序,根据选择可实现a与b的四则运算。#include“stdio.h”main(){inta,b;charc1;printf(”1.Add”);printf(”2.Subtract”);printf(”3.Multiply”);printf(”4.Divide”);printf(”Enteryourchoice:”);c1=g5、etchar();8c1=getchar();if(c1>=’1’&&c1<=’4’){printf(”Entera,b:”);scanf(“%d,%d”,&a,&b);switch(c1){case’1’:printf(“%d”,a+b);break;case’2’:printf(“%d”,a-b);break;case’3’:printf(“%d”,ab);break;case’4’:printf(“%f”,(float)a/b);}}elseprintf(“Invalidselsction.”);}9四、数组各元素分类统计字符数组:统计字母、数字字符的个数;A、6、E、I、O、U、等出现的次数。数值数组:统计大于某个数、能被某个数整除、正负数个。定义数组(如charstr[80];intnum[N];)输入各元素的值字符数组:数值数组:循环str[i]!=‘ ’循环i=0~N-1str[i]分类计数num[i]符合计数条件?符合则计数10例4:输入一行英文文本(最长80),分别统计文本中字母、数字、空格字符个数及所有字符个数。#include"stdio.h"main(){inti,l,n,s,all;charstr[80],t;l=n=s=all=0;gets(str);for(i=0;(t=str[i])!=' ';i++){if(t>7、='A'&&t<='Z't>='a'&&t<='z')l++;elseif(t>='0'&&t<='9')n++;elseif(t=='')s++;all++;}printf("l=%d,n=%d,s=%d,all=%d",l,n,s,all);}11五、两个数组对应元素比较大小定义两个数组s1、s2,构造循环,对s1[i]、s2[i]进行比较。两个字符串比较:for(i=0;s1[i]==s2[i];i++)if(s1[i]==‘ ’)break;
2、班某门课平均成绩、最高、最低。#defineN10main(){inta[N],i,max,min;floatsum=0;for(i=0;imax)max=a[i];if(a[i]3、成分离工作,每次k%10就得到k的最低位的值,k/10就去掉k的最低位,如此循环,直到k=0为止。5用变量main(){longn,d;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d=n%10;printf(“%d”,d);n=n/10;}}例2:输入一个最多8位的正整数,将各数按位颠倒输出。用数组main(){longn,d[8];inti,k=0;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d[k++]=n%10;n=n/10;}for(i=0;i4、tf(“%d”,d[i]);}6三、设计菜单程序步骤如下:1显示菜单项目2等待用户输入选择信息3判断选择信息,进行分支处理由于这类问题属于“根据一个变量的不同值进行多路分支”的问题,所以用switch语句比较合适。7例3:设计一个简单的菜单选择程序,根据选择可实现a与b的四则运算。#include“stdio.h”main(){inta,b;charc1;printf(”1.Add”);printf(”2.Subtract”);printf(”3.Multiply”);printf(”4.Divide”);printf(”Enteryourchoice:”);c1=g5、etchar();8c1=getchar();if(c1>=’1’&&c1<=’4’){printf(”Entera,b:”);scanf(“%d,%d”,&a,&b);switch(c1){case’1’:printf(“%d”,a+b);break;case’2’:printf(“%d”,a-b);break;case’3’:printf(“%d”,ab);break;case’4’:printf(“%f”,(float)a/b);}}elseprintf(“Invalidselsction.”);}9四、数组各元素分类统计字符数组:统计字母、数字字符的个数;A、6、E、I、O、U、等出现的次数。数值数组:统计大于某个数、能被某个数整除、正负数个。定义数组(如charstr[80];intnum[N];)输入各元素的值字符数组:数值数组:循环str[i]!=‘ ’循环i=0~N-1str[i]分类计数num[i]符合计数条件?符合则计数10例4:输入一行英文文本(最长80),分别统计文本中字母、数字、空格字符个数及所有字符个数。#include"stdio.h"main(){inti,l,n,s,all;charstr[80],t;l=n=s=all=0;gets(str);for(i=0;(t=str[i])!=' ';i++){if(t>7、='A'&&t<='Z't>='a'&&t<='z')l++;elseif(t>='0'&&t<='9')n++;elseif(t=='')s++;all++;}printf("l=%d,n=%d,s=%d,all=%d",l,n,s,all);}11五、两个数组对应元素比较大小定义两个数组s1、s2,构造循环,对s1[i]、s2[i]进行比较。两个字符串比较:for(i=0;s1[i]==s2[i];i++)if(s1[i]==‘ ’)break;
3、成分离工作,每次k%10就得到k的最低位的值,k/10就去掉k的最低位,如此循环,直到k=0为止。5用变量main(){longn,d;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d=n%10;printf(“%d”,d);n=n/10;}}例2:输入一个最多8位的正整数,将各数按位颠倒输出。用数组main(){longn,d[8];inti,k=0;printf(“Enteradata:”);scanf(“%ld”,&n);while(n!=0){d[k++]=n%10;n=n/10;}for(i=0;i4、tf(“%d”,d[i]);}6三、设计菜单程序步骤如下:1显示菜单项目2等待用户输入选择信息3判断选择信息,进行分支处理由于这类问题属于“根据一个变量的不同值进行多路分支”的问题,所以用switch语句比较合适。7例3:设计一个简单的菜单选择程序,根据选择可实现a与b的四则运算。#include“stdio.h”main(){inta,b;charc1;printf(”1.Add”);printf(”2.Subtract”);printf(”3.Multiply”);printf(”4.Divide”);printf(”Enteryourchoice:”);c1=g5、etchar();8c1=getchar();if(c1>=’1’&&c1<=’4’){printf(”Entera,b:”);scanf(“%d,%d”,&a,&b);switch(c1){case’1’:printf(“%d”,a+b);break;case’2’:printf(“%d”,a-b);break;case’3’:printf(“%d”,ab);break;case’4’:printf(“%f”,(float)a/b);}}elseprintf(“Invalidselsction.”);}9四、数组各元素分类统计字符数组:统计字母、数字字符的个数;A、6、E、I、O、U、等出现的次数。数值数组:统计大于某个数、能被某个数整除、正负数个。定义数组(如charstr[80];intnum[N];)输入各元素的值字符数组:数值数组:循环str[i]!=‘ ’循环i=0~N-1str[i]分类计数num[i]符合计数条件?符合则计数10例4:输入一行英文文本(最长80),分别统计文本中字母、数字、空格字符个数及所有字符个数。#include"stdio.h"main(){inti,l,n,s,all;charstr[80],t;l=n=s=all=0;gets(str);for(i=0;(t=str[i])!=' ';i++){if(t>7、='A'&&t<='Z't>='a'&&t<='z')l++;elseif(t>='0'&&t<='9')n++;elseif(t=='')s++;all++;}printf("l=%d,n=%d,s=%d,all=%d",l,n,s,all);}11五、两个数组对应元素比较大小定义两个数组s1、s2,构造循环,对s1[i]、s2[i]进行比较。两个字符串比较:for(i=0;s1[i]==s2[i];i++)if(s1[i]==‘ ’)break;
4、tf(“%d”,d[i]);}6三、设计菜单程序步骤如下:1显示菜单项目2等待用户输入选择信息3判断选择信息,进行分支处理由于这类问题属于“根据一个变量的不同值进行多路分支”的问题,所以用switch语句比较合适。7例3:设计一个简单的菜单选择程序,根据选择可实现a与b的四则运算。#include“stdio.h”main(){inta,b;charc1;printf(”1.Add”);printf(”2.Subtract”);printf(”3.Multiply”);printf(”4.Divide”);printf(”Enteryourchoice:”);c1=g
5、etchar();8c1=getchar();if(c1>=’1’&&c1<=’4’){printf(”Entera,b:”);scanf(“%d,%d”,&a,&b);switch(c1){case’1’:printf(“%d”,a+b);break;case’2’:printf(“%d”,a-b);break;case’3’:printf(“%d”,ab);break;case’4’:printf(“%f”,(float)a/b);}}elseprintf(“Invalidselsction.”);}9四、数组各元素分类统计字符数组:统计字母、数字字符的个数;A、
6、E、I、O、U、等出现的次数。数值数组:统计大于某个数、能被某个数整除、正负数个。定义数组(如charstr[80];intnum[N];)输入各元素的值字符数组:数值数组:循环str[i]!=‘ ’循环i=0~N-1str[i]分类计数num[i]符合计数条件?符合则计数10例4:输入一行英文文本(最长80),分别统计文本中字母、数字、空格字符个数及所有字符个数。#include"stdio.h"main(){inti,l,n,s,all;charstr[80],t;l=n=s=all=0;gets(str);for(i=0;(t=str[i])!=' ';i++){if(t>
7、='A'&&t<='Z't>='a'&&t<='z')l++;elseif(t>='0'&&t<='9')n++;elseif(t=='')s++;all++;}printf("l=%d,n=%d,s=%d,all=%d",l,n,s,all);}11五、两个数组对应元素比较大小定义两个数组s1、s2,构造循环,对s1[i]、s2[i]进行比较。两个字符串比较:for(i=0;s1[i]==s2[i];i++)if(s1[i]==‘ ’)break;
此文档下载收益归作者所有