标签:
1、第一个小程序:产生20个30-70之间的随机数,并计算他们的和,用到arc4random()函数,产生【x y】之间的随机数,arc4random()%(y-x+1) + x 需要添加头文件stdlib.h
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a[20]={0};
int sum=0;
for(int i=0;i<20;i++){
a[i]=arc4random()%41+30;//要加stdlib头文件,不然会产生负数
printf("%d ",a[i]);
sum+=a[i];
}
printf("\n%d",sum);
return 0;
}
2、第二个小程序:打印100以内不能被7整除,并且不包含7的数
#include<stdio.h>
int main()
{
int i;
for(i=1;i<=100;i++)
{
if(i%7==0 || i%10==7||i/10==7){
continue;
}
printf("%d ",i);
}
return 0;
}
3、第三个小程序:商场买东西,超过500,超出的部分打9折
#include<stdio.h>
int main()
{
char c;
int money=0;
int realpay = 0;
do{
printf("请输入一个金额:");
scanf("%d",&money);
if(money>500)
{
realpay=(money-500)*0.9+500;
}
else{
realpay=money;
}
printf("%d\n",realpay);
printf("是否继续:Y/N?");
getchar();
c=getchar();
}while(c==‘Y‘||c==‘y‘);
return 0;
}
4、第四个小程序:判断闰年,四年一闰,百年不闰,四百年再闰
#include<stdio.h>
int main()
{
char c;
int year=0;
do{
scanf("%d",&year);
if (year%400==0||(year%4==0&&year%100!=0))
printf("%d年是闰年\n",year);
else
printf("%d年不是闰年\n",year);
printf("是否继续:Y/N?\n");
getchar();
c=getchar();
}while(c==‘y‘||c==‘Y‘);
return 0;
}
5、第5个小程序:结构体做结构体成员
#include<stdio.h>
typedef struct date{
int year;
int month;
int day;
}MyDate;
typedef struct stu{
int number;
MyDate birthday;
char name[20];
char sex[10];
int score;
}Stu;
int main()
{
Stu students[5] = {
{001,{1991,1,1},"laoer","nan",87},
{002,{1992,2,2},"laoer","nv",82},
{003,{1993,3,3},"laosan","nan",88},
{004,{1994,4,4},"laosi","nan",84},
{005,{1995,5,5},"laowu","nan",85}
};
for(int i=0;i<5-1;i++){
for(int j=0;j<5-1-i;j++){
if(students[j].score<students[j+1].score){
Stu temp=students[j];
students[j]=students[j+1];//结构体可以直接赋值
students[j+1]=temp;
}
}
}
printf("%d %d-%d-%d %s %s %d\n",students[i].number,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].name,students[i].sex,students[i].score);
}
}
6、二维数组学习:产生2行3列的1-50之间的随机数排序并打印,打印最大的数
#include<stdio.h>
#include<stdlib.h>
int main()
{
int number[2][3]={0};
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
number[i][j]=arc4random()%50;
printf("%d ",number[i][j]);
}
printf("\n");
}
int max=0;
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
if(max<number[i][j]){
max=number[i][j];
}
}
}
printf("%d\n",max);
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
if(number[i][j]==max){
printf("%d %d",i,j);
}
}
}
return 0;
}
7、输入一个数,计算阶乘
#include<stdio.h>
int main()
{
int i;
int sum=1;
printf("请输入:");
scanf("%d",&i);
for(int j=1;j<=i;j++){
sum*=j;
}
printf("%d的阶乘是%d\n",i,sum);
}
8、输入日期,判断是本年的第几天
typedef struct date{
int year;
int mouth;
int day;
}Date;
// 判断闰年
int pd_year(int a);
int pd_year(int a)
{
if (a%400==0||(a%4==0&&a%100!=0))
return 1;
else
return 0;
}
int pd_day(struct date Date);
int pd_day(struct date Date)
{
int sum=0,days[] = {31,28,31,30,31,30,31,31,30,31,30,31};
for (int i=0; i<Date.mouth-1; i++)
sum+=days[i];
if (Date.mouth>2)
sum=sum+Date.day+pd_year(Date.year);
else
sum=sum+Date.day;
return sum;
}
int main(void) {
struct date Date;
int n;
printf("请输入日期(年 月 日)\n");
scanf("%d%d%d",&Date.year,&Date.mouth,&Date.day);
n=pd_day((Date));
printf("该日在本年中是第%d天",n);
}
return 0;
}
9、输入成绩,判断ABCDE,输错三次机会
#include<stdio.h>
int main(void)
{
int gread=0;
int i=3;
printf("请输入您的成绩:\n");
scanf("%d",&gread);
while(gread==0||gread){
if(gread>=0&&gread<=100){
switch(gread/10){
case 10:
case 9:
printf("您的成绩是A\n");
break;
case 8:
printf("您的成绩是B\n");
break;
case 7:
printf("您的成绩是C\n");
break;
case 6:
printf("您的成绩是D\n");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
printf("您的成绩是E\n");
break;
default:
break;
}
}else
{
--i;
if(i>0){
printf("输入错误,您还有%d次输入机会!\n",i);}
else{
break;
}
}
scanf("%d",&gread);
}
return 0;
}
标签:
原文地址:http://www.cnblogs.com/10-19-92/p/4641648.html