在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1. 要求输入一个正整数,打印下述图形 输入:5 输出: * ** *** **** *****
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int num,i,j; scanf("%d",&num); for(i=1;i<=num;i++) { for(j=1;j<i+1;j++) { printf("*"); } printf("\n"); } return 0; }
2. 要求输入一个正整数,打印下述图形 输入:5 输出: * ** *** **** *****
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int num,i,j,k; scanf("%d",&num); for(i=1;i<=num;i++) { for(j=1;j<=num-i;j++) { printf(" "); } for(k=1;k<i+1;k++) { printf("*"); } printf("\n"); } return 0; }
3. 要求输入一个正整数,打印下述图形 输入:5 输出: * *** ***** ******* *********
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int num,i,j,k,l; scanf("%d",&num); for(i=1;i<=num;i++) { for(j=1;j<=num-i;j++) { printf(" "); } for(k=1;k<i*2-1+1;k++) { printf("*"); } for(l=1;l<=num-i;l++) { printf(" "); } printf("\n"); } return 0; }
4. 要求输入一个正整数,打印下述图形 输入:5 输出: ABBBB AABBB AAABB AAAAB AAAAA
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int num,i,j,k,l; scanf("%d",&num); for(i=1;i<=num;i++) { for(j=1;j<=num-i;j++) { printf(" "); } for(k=1;k<i+1;k++) { printf("A"); } for(l=1;l<=num-i;l++) { printf("B"); } printf("\n"); } return 0; }
5. 要求输入一个正整数,判断是否是质数(质数也叫素数) 输入:5 输出:是素数
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int nu,i; scanf("%d",&nu); for (i=2; i<nu; i++) { if(nu%i == 0) { break; //能除尽就说明了不是质数 } } if(i == nu ) //如果等于nu证明是没遇到因数 { printf("是质数"); } else { printf("不是质数"); } return 0; }
6. 要求输入两个正整数,求两个数的最大公约数 //最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个 输入:6 3 输出:3
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int i,numA,numB,mix; scanf("%d,%d",&numA,&numB); mix=(numA<numb)?numA:numB; for (i=mix; i>=1; i--) { if (numA%i == 0 && numB%i == 0) { break; } } printf(“%d”,i);//得到i结果就是最大公约数 return 0; }
7. 要求输入两个正整数,求两个数的最小公倍数 输入:6 3 输出:6
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int numa,numb,max; scanf("%d,%d",&numa,&numb); max=(numa<numb)?numa:numb; while(1) //找出最小的刚能整除两个数的数就是最小公倍数 { if (max%numa == 0 && max%numb == 0) { break; } max++; } printf("%d",max); return 0; }
8. 要求输入一个正整数,分解质因数 分解质因素:将一个合数分解成为几个质数的乘积。 输入:8 输出:2 2 2 注:8=2*2*2
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int nu; scanf("%d",&nu); for (int i=2; i<=nu; i++) { if (nu%i == 0) { //用找出最小的因数(i) printf("%d ",i); nu/=i; //得到 i--; } } return 0; }
9. 要求输入两个正整数n,a,如果n==3, a == 2; 输出 2 + 22 + 222 的值。(不用输出式子) m=5,n=a 3+33+333+3333+33333 10*3+3 10*33+3 ret=10*ret+a sum=sum+ret
输入:3 输出:246 注:246=2+22+222
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int m,a; scanf("%d %d",&m,&a);
int sum=0; int ret=0;
for (int i=1; i<=m; i++) { ret=10*ret+a; //ret为当前的值,如3,33,333,3333 sum=sum+ret; } printf("%d\n",sum); return 0; }
10. 五位数中,对称的数称为回文数,找出10000到99999所有的回文数。 如12321 注:运行你就可以看到效果
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { // insert code here... for (int i=10000; i<=99999; i++) { int bita,bitb,bitc,bitd; //12345 % 10=5 bita=i%10; //12345/10=1234 1234%10=4 bitb=i/10%10; //12345/1000=123 12%10=2 bitc=i/1000%10; //12345/10000=1 1%10=1 bitd=i/10000%10; if (bita==bitd && bitb==bitc) { printf("%d ",i); } } return 0; }
11. 输入任意多个整数,最后一个数是0,输出这些数中最大的数。 思想:每次输入一个数,进行比较,每次保存当前最大数。 输入:5 4 3 9 0 输出:最大值为:9
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int nu,max; scanf("%d",&nu); max=nu; //暂定第一个数为最大值,很好的思想 while (1) { scanf("%d",&nu); if (nu == 0) { break; } if (max < nu) { max=nu; } } printf("最大值为:%d",max); return 0; }
12. 要求输入一个正整数,求这个数的阶乘。 输入:3 输出:6 注:6=1*2*3
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) { int num1,i,sum=1; scanf("%d",&num1); for(i=1;i<=num1;i++) { sum*=i; } printf("%d\n",sum); return 0; }
13. 要求输入一个(int 范围内)整形数字,逆序输出10进制. 输入:84521 输出:12458
实现代码如下: #include <stdio.h> int main(int argc, const char * argv[]) {
int num1,i=0,shu[64],j; scanf("%d",&num1); //把这个数的每一位都拿出来,拿完后刚好把顺序排好了 while(1) { shu[i]=num1%10; num1=num1/10; i++; if(num1 == 0) { break; } } //把摆好顺序的数的每一位都打印出来 for(j=0;j<i;j++) { printf("%d",shu[j]); } printf("\n"); return 0; }
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论