1、求一个数 10的阶乘。#include
int main() {
int i,sum=1;
for(i=1;i<=10;i++)sum*=i;
printf("%d\n",sum);
}
运行结果:3628800
2、选择排序(10个数从小到大)。#include
int main()
{
int i,j,iTemp,iPos,a[10]={23,4,5,6,3,7,1,8,19,56};
/*从低到高排序*/
for(i=0;i<10;i++)
{
iTemp = a[i]; /*设置当前元素为最小值*/
iPos = i; /*记录元素位置*/
/*当前元素跟后面其他元素进行比较,找出比当前元素还小的元素*/
for(j=i+1;j<10;j++)
{
/*如果当前元素比最小的值还小*/
if(a[j]
{
iTemp = a[j]; /*重新设置最小元素*/
iPos = j; /*记录元素位置*/
}
}
/*交换两个元素值*/
a[iPos] = a[i];
a[i] = iTemp;
}
/* 输出数组*/
for(i=0;i<10;i++)
{
printf("%d ",a[i]); /* 输出每一个元素*/
}
}
运行结果:1 3 4 5 6 7 8 19 23 56
3、选择排序(10个数从大到小)。#include
int main()
{
int i,j,iTemp,iPos,a[10]={23,4,5,6,3,7,1,8,19,56};
/*从低到高排序*/
for(i=0;i<10;i++)
{
iTemp = a[i]; /*设置当前元素为最大值*/
iPos = i; /*记录元素位置*/
/*当前元素跟后面其他元素进行比较,找出比当前元素还大的元素*/
for(j=i+1;j<10;j++)
{
/*如果当前元素比最大的值还大*/
if(a[j]>iTemp)
{
iTemp = a[j]; /*重新设置最大元素*/
iPos = j; /*记录元素位置*/
}
}
/*交换两个元素值*/
a[iPos] = a[i];
a[i] = iTemp;
}
/* 输出数组*/
for(i=0;i<10;i++)
{
printf("%d ",a[i]); /* 输出每一个元素*/
}
}
运行结果:56 23 19 8 7 6 5 4 3 1
4、求主次对角线元素之和。#include
int main() {
int a[3][3]={1,2,3,5,6,7,7,8,5},sumr=0,sumc=0,i;
for(i=0;i<3;i++){
sumr+=a[i][i];
sumc+=a[i][3-i];
}
printf("主对角线=%d,次对角线=%d\n",sumr,sumc);
}
运行结果:主对角线=12,次对角线=20
5、分段函数计算 (当x<1时,y=2x-1;当 1<=x<4时,y=x+2;当x>=4时,y=3x+6) 。#include
int main()
{
int x,y;
printf("x:");
scanf("%d",&x);
if(x<1)
{
y=2*x-1;
}else if(x>=1 && x<4)
{
y=x+2;
}
else if(x>=4)
{
y=3*x+6;
}
printf("y=%d\n",y);
}
输入的内容:5
运行结果:y=21
6、圆柱的体积计算(从键盘输入半径和高,输出体积)。#include
#define PI (3.14)
int main()
{
double r,h,v;
printf("r:");
scanf("%lf",&r);
printf("h:");
scanf("%lf",&h);
v=PI*r*r*h;
printf("v:%.2lf\n",v);
}
输入的内容:r:3
输入的内容:h:3
运行结果:v:84.78
7、求x的n次方(通过函数调用实现)。#include
long power_nth(int x,int n){
int i;
long sum=1;
for(i=1;i<=n;i++) sum=sum*x;
return sum;
}
int main()
{
int a,b;
long s;
printf("输入x,n\n");
scanf("%d,%d",&a,&b);
s=power_nth(a,b);
printf("%d^%d=%ld\n",a,b,s);
}
输入的内容:3,2
运行结果:3^2=9
8、将一个二维数组行列互换(同过两个数组实现)。#include
int main()
{
int a[3][4]={{1,3,4,5},{4,6,7,8},{3,0,7,4}}, b[4][3], i, j;
for (i = 0; i <3; i++)
for (j = 0; j <4; j++)
b[j][i] = a[i][j];
printf("a:\n");
for (i = 0; i < 3; i++)
{
for (j = 0; j < 4; j++)
printf("%4d", a[i][j]);
printf("\n");
}
printf("b:\n");
for (i = 0; i<4;i++)
{
for (j = 0; j <3; j++)
printf("%4d", b[i][j]);
printf("\n");
}
}运行结果:
a:
1 3 4 5
4 6 7 8
3 0 7 4
b:
1 4 3
3 6 0
4 7 7
5 8 4
9、判断从键盘输入的数是不是素数,如果是则输出“y"。#include
int main()
{
int i,y,s=1;
printf(" 随便输入一个整数:");
scanf("%d",&y);
for(i=2;i
{
if(y%i==0)
{
s=0;
break;
}
}
if(s)printf("y\n");
else printf("不是素数\n");
}
输入的内容:随便输入一个整数:7
运行结果:y
10、判断从键盘输入的字符串是不是回文。#include
#include
int main() {
char str[100];
int i,j;
printf("输入字符串:");
gets(str);
i=0;
j=strlen(str)-1;
while(i
i++;
j--;
}
if(i>=j)
printf("是回文\n");
else
printf("不是回文\n");
}
输入的内容:输入字符串:asbsa
运行结果:是回文
11、输出直角三角形*图案。#include
int main() {
int i,j,k;
for(i=1;i<=4;i++){
for(j=0;i>j;j++){
printf("#");
}
printf("\n");
}
}运行结果:
#
##
###
####
12、10个数求最大值。#include
int main() {
int a[10]={22,30,5,7,9,34,4,8,6,90},max=a[0];
int i;
for(i=0;i<10;i++){
if(a[i]>max) {
max=a[i];
}
}
printf("最大值:%d\n",max);
}
运行结果:最大值:90
13、将一个正整数逆序输出。#include
int main()
{
int num;
printf("输入一个正整数:");
scanf("%d",&num);
int a,i;
for(i = 0;num > 0;i++)
{
a = num % 10;
printf("%d",a);
num = num/10;
}
}
输入的内容:输入一个正整数:45678
运行结果:87654
14、编程输出斐波那契数列的前25项。#include
int main(){
long fib[25]={1,1};
int i;
for(i=2;i<=25;i++)
fib[i]=fib[i-1]+fib[i-2];
for(i=0;i<25;i++)
printf("第%d位数是 %ld\n",i+1,fib[i]);
}运行结果:
第1位数是 1
第2位数是 1
第3位数是 2
第4位数是 3
第5位数是 5
第6位数是 8
第7位数是 13
第8位数是 21
第9位数是 34
第10位数是 55
第11位数是 89
第12位数是 144
第13位数是 233
第14位数是 377
第15位数是 610
第16位数是 987
第17位数是 1597
第18位数是 2584
第19位数是 4181
第20位数是 6765
第21位数是 10946
第22位数是 17711
第23位数是 28657
第24位数是 46368
第25位数是 75025
本文由 admin 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Jun 16, 2019 at 05:21 pm