C语言练习题

输出千位百位十位个位

#include "stdio.h"
void main()
{
    int a=1234;
	int b,c,d,e;
	b=a/1000;
	c=a/100%10;
	d=a/10%10;
	e=a%10;
	printf("%d,%d,%d,%d",b,c,d,e);
}

比较最大值

#include "stdio.h"
void main()
{
    int a,b;
	int c;
	scanf("%d %d",&a,&b);
	c=a>b?a:b;
	printf("max=%d",c);
}

 三位数从大到小排列

#include "stdio.h"
void main()
{
    int a,b,c;
    int max,mid,min;
    scanf("%d %d %d",&a,&b,&c);
    if(a>b&&a>c){
    	max=a;
    	if(b>c){
    		mid=b;
    		min=c;
    	}else{
    		mid=c;
    		min=b;
    	}
    }
    if(b>a&&b>c){
    	max=b;
    	if(a>c){
    		mid=a;
    		min=c;
    	}else{
    		mid=c;
    		min=a;
    	}
    }
    if(c>b&&c>a){
    	max=c;
    	if(b>a){
    		mid=b;
    		min=a;
    	}else{
    		mid=a;
    		min=b;
    	}
    }
    printf("%d,%d,%d",max,mid,min);
}

 考试成绩等级

#include "stdio.h"
void main()
{
    int score;
	scanf("%d",&score);
	switch(score/10){
		case 10:
		case 9:
			printf("A");
			break;
		case 8:
			printf("B");
			break;
		case 7:
			printf("C");
			break;
		case 6:
			printf("D");
			break;
		default:
			printf("E");
			break;
	}
}

 100以内能被3和5整除的数,按照每3个一行输出

int i;
	int j=0;
	for(i=1;i<=100;i++){//适用于水仙花数、三个一行五个一行
		if(i%3==0&&i%5==0){
			printf("%d ",i);
			j++;
			if(j%3==0){
				printf("\n");
			}
		}
	}

打印菱形

#include<stdio.h>
int main()
{
	int line = 0;
	int i = 0;
	scanf("%d", &line);
	//上部分
	for (i = 0; i < line; i++)
	{
		int j = 0;
		//打印空格
		for (j = 0; j < line - 1 -i; j++)
		{
			printf(" ");
		}
		//打印*
		for (j = 0; j < 2 * i + 1; j++)
		{
			printf("*");
		}
		printf("\n");
	}
	//下部分
	for (i = 0; i < line - 1; i++)
	{
		int j = 0;
		//打印空格
		for (j = 0; j < i+1; j++)
		{
			printf(" ");
		}
		//打印*
		for (j = 0; j < 2 * (line - 1 - i)-1; j++)
		{
			printf("*");
		}
		printf("\n");
	}
	return 0;
}

百钱买百鸡

#include <stdio.h>
void main(){
	int x,y,z;
	int count=0;
	for(x=1;x<=100;x++){//100鸡
		for(y=1;y<=100;y++){//100块
			for(z=1;z<=100;z++){
				if(x+y+z==100 && 5*x+3*y+z/3==100 && z%3==0){
					count++;
					printf("公鸡:%d\n",x);
					printf("母鸡:%d\n",y);
					printf("小鸡:%d\n",z);
				}
			}
		}
	}
	printf("%d",count);
}

排序 冒泡排序

    int i,j;
    int temp;
    int a[]={3,7,11,5,8};
    for(i=0;i<5-1;i++){//i小于长度减一
    	for(j=0;j<5-1-i;j++){
	    	if(a[j]>a[j+1]){
	    		temp=a[j];
	    		a[j]=a[j+1];
	    		a[j+1]=temp;
	    		
	    	}
    	}
    }
    for(i=0;i<5;i++){//正序输出
    	printf("%-2d",a[i]);
    }

字符串查找

#include <stdio.h>
void main(){
	char ch[]={'a','b','c'};
    char str[]={"abc"};//里面有4个字符,有一个隐含的\0
    int i=0,index=-1;
    for(i=0;i<3;i++){
    	if(ch[i]=='b'){//查找字符b
    		index=i;
    		break;
    	}
    }
    if(index==-1){
    	printf("no");
    }else{
    	printf("%d",index);
    }
}

求字符串长度

#include <stdio.h>
void main(){
	char str[]={"abc"};
    int length=0;
    while(str[length]!='\0'){
    	length++;
    }
    printf("length=%d",length);
}

二维数组

#include <stdio.h>
void main(){
	int a[3][3]={
    	{1,2,3},
    	{4,5,6},
    	{7,8,9}
    };
    int i,j,sum;
    for(i=0;i<3;i++){
    	for(j=0;j<3;j++){
    		printf("%d",a[i][j]);
    	}
    	printf("\n");
    }

}

求对角线的和

//求主对角线的和
    for(i=0;i<3;i++){
    	for(j=0;j<3;j++){
    		if(i==j){
    			sum+=a[i][j];
    			printf("%d ",sum);
    		}
    	}
    }

//求辅对角线的和
    for(i=0;i<3;i++){
    	for(j=0;j<3;j++){
    		if((i+j)==2){
    			sum+=a[i][j];
    			printf("%d ",sum);
    		}
    	}
    }

指针接收字符串,输出字符串长度

#include <stdio.h>
void main(){
	char str[20];
    int len=0;
    char *p;
    p=str;
    scanf("%s",str);
    while(*p!='\0'){
    	len++;
    	p++;
    }
    printf("%d",len);

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值