C语言练习题
(一)判断一年是平年还是闰年
#include <stdio.h>
int main()
{
int year;
printf("请输入一个年份\n");
scanf("%d",&year);
if(year % 4 == 0 && year % 100 != 0||year % 400 == 0)
{
printf("%d年是闰年\n",year);
}
else
(
printf("%d年是平年\n",year);
)
return 0;
}
(二)求从1累加到100的结果
#include <stdio.h>
int main()
{
int i,sum = 0;
for(i=1;i<=100;i++)
sum += i;
printf("从1加到100的结果是%d\n",sum);
return 0;
}
(三)三角*
#include <stdio.h>
int main()
{
int a,b,c;
char x='*',y=' ';
printf("请输入你想要的行数\n");
scanf("%d",&c);
for(a=1;a<=c;a++)
{
for(b=1;b<=(2*c-1);b++)
{
if(a<=(c-b))
printf("%c",y);
else if (b>(c+a-1))
printf("%c",y);
else
printf("%c",x);
}
printf("\n");
}
return 0;
}
(四)打印九九乘法表
#include <stdio.h>
int main()
{
int i,j;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
printf("%d * %d = %-4d",i,j,i*j);
}
printf("\n");
}
return 0;
}
(五)求一组数据的最大值
#include <stdio.h>
#define N 10
int main()
{
int arr[N] = {0};
int i = 0;
int max = arr[0];
printf("请输入%d个数字\n",N);
for(i=0;i<N;i++)
{
scanf("%d",&arr[i]);
}
for(i=0;i<N;i++)
{
if(arr[i]>max)
{
max = arr[i];
}
printf("%-4d",arr[i]);
}
printf("数组最大值为%d\n",max);
return 0;
}
(六)不使用第三方变量,实现两个数的交换
#include <stdio.h>
int main()
{
int i=1;
int j=2;
int a;
a=i;i=j;j=a;
printf("%d %d\n",i,j);
return 0;
}
(七)不使用字符串处理函数,实现字符串的连接
#include <stdio.h>
int main()
{
char str1[100]="grainbuds";
char str2[100]="world";
int i=0;
int j=0;
while(str1[i] != '\0')
{
i++;
}
while(str2[j] != '\0')
{
str1[i] = str2[i];
i++; j++;
}
puts(str1);
return 0;
(八)不使用字符串处理函数,实现字符串的拷贝
#include <stdio.h>
int main()
{
char str1[10]="grainbuds";
char str2[10]="world";
int i=0;
while(str2[i] != '\0')
{
str1[i] = str2[i]; i++;
}
str1[i] = '\0';
puts(str1);
return 0;
(九)不使用字符串处理函数,求字符串的长度
#include <stdio.h>
int main()
{
char str[100]="grainbuds";
int i=0;
int length=0;
while(str[i] != '\0')
{
i++; length++;
}
printf("长度为%d\n",length);
return 0;
}