题目1:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 2.程序源代码: main() { int a,b,num1,num2,temp; printf("please input two numbers:
"); scanf("%d,%d",&num1,&num2); if(num1{ temp=num1; num1=num2; num2=temp; } a=num1;b=num2; while(b!=0)/*利用辗除法,直到b为0为止*/ { temp=a%b; a=b; b=temp; } printf("gongyueshu:%d
",a); printf("gongbeishu:%d
",num1*num2/a); } 题目2:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为’
’. 2.程序源代码: #include "stdio.h" main() {char c; int letters=0,space=0,digit=0,others=0; printf("please input some characters
"); while((c=getchar())!=’
’) { if(c>=’a’&&c<=’z’||c>=’A’&&c<=’Z’) letters++; else if(c==’ ’) space++; else if(c>=’0’&&c<=’9’) digit++; else others++; } printf("all in all:char=%d space=%d digit=%d others=%d
",letters, space,digit,others); } 题目3:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 2.程序源代码: main() { int a,n,count=1; long int sn=0,tn=0; printf("please input a and n
"); scanf("%d,%d",&a,&n); printf("a=%d,n=%d
",a,n); while(count<=n)外语学习网 { tn=tn+a; sn=sn+tn; a=a*10; ++count; } printf("a+aa+...=%ld
",sn); }首页 1 2 尾页
相关资料
|