您的位置:首页 > 编程语言 > C语言/C++

一些C语言期末作业 题目以及自己做的答案。

2016-06-22 15:41 711 查看


第一题:
#include<stdio.h>
int main(int argc,char* argv[])
{
int number;
printf("请输入一个正整数:(按下回车键结束)\n");
scanf("%d",&number);
if(number%5==0 && number%7==0)
{
printf("yes\n");
}else{

printf("no\n");
}
return 1;
}
第二题:
#include<stdio.h>
/*********************************************************************************
同时满足以下条件:1、年份能被4整除;2、年份若是100的整数倍的话,需被400整除,否则是平年。
举例如下:1900年能被4整除,但是因为其是100的整数倍,却不能被400整除,
所以是平年;而2000年就是闰年;1904和2004、2008等直接能被4整除且不倍100整除,都是闰年。
*************************************************************************************/
int main(int argc,char * argv[])
{
int year;
printf("请输入年份:(按回车键结束)");
scanf("%d",&year);
if(year % 100==0){
if(year % 400==0)
{
printf("是闰年");
}else{

printf("是平年");
}
}else{

if(year % 4==0)
{
printf("是闰年");
}else{

printf("是平年");
}
}
return 1;
}
第三题:
#include<stdio.h>
int main(int argc, char * argv[])
{
//|每个苹果的单价
double price = 0.8;
//|购买数量(总量)
int amount = 2;
//|当前购买的数量(当天购买的)
int tmpamount = 2;
//|购买了的天数
int days = 1;
//|平均数
float average=0;
printf("第1天买了2\n");
while (tmpamount * 2 <= 100)
{
//|当天购买的数量
tmpamount = tmpamount * 2;
//|第二天买的是上一天的两倍
amount += tmpamount;
//|天数递增
++days;

printf("第%d天买了%d\n",days, tmpamount);
}
printf("一共%d天,  %d个", days, amount);
//|计算平均每天花了多少钱(个数*单价/天数)
average= amount*price / days;
printf("平均每天花了%f元\n", average);

return 1;

}

第四题
#include<stdio.h>
int main(int argc, char * argv[])
{
int tmp=0;
int a[5];
int i;
int j;

printf("请输入五个整数:(每个输入完成后按下回车键结束)\n");
for (i = 0; i <= 4; i++)
{
scanf("%d", &a[i]);
}
//|冒泡排序
for (i = 0; i <= 4; i++)
{
for (j = 0; j <= 3; j++)
{
if (a[j] > a[j+1])
{
tmp= a[j+1];
a[j+1] = a[j];
a[j] = tmp;
}
}
}
printf("升序排序结果:\n");
for (i = 0; i <= 4; i++)
{
printf("%d\n",a[i]);
}
return 1;
}
第五题:
#include<stdio.h>
#include<ctype.h>
int main(int argc, char argv[])
{
char data[1024];
int i = 0;
int amount = 0;
printf("请输入一个字符串:(回车键结束)");
scanf("%s", data);

while (data[i] != '\0')
{
if (islower(data[i]))
{
++amount;
}
++i;
}
printf("您输入的小写字符的个数为:%d",amount);

}

修改一些:

第四题:
#include<stdio.h>
int main(int argc, char * argv[])
{
int tmp=0;
int a[5];
int i;
int j;

printf("请输入五个整数:(每个输入完成后按下回车键结束)\n");
for (i = 0; i <= 4; i++)
{
scanf("%d", &a[i]);
}
//|冒泡排序
for (i = 0; i <= 4; i++)
{
for (j = 0; j <= 3-i; j++)
{
if (a[j] > a[j+1])
{
tmp= a[j+1];
a[j+1] = a[j];
a[j] = tmp;
}
}
}
printf("升序排序结果:\n");
for (i = 0; i <= 4; i++)
{
printf("%d\n",a[i]);
}
return 1;
}
第五题:
#include<stdio.h>
int main(int argc, char argv[])
{
char data[1024];
int i = 0;
int amount = 0;
printf("请输入一个字符串:(回车键结束)");
gets(data);
while (data[i] != '\0')
{
if (data[i]>='a' && data[i]<='z')
{
++amount;
}
++i;
}
printf("您输入的小写字符的个数为:%d",amount);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: