【C语言】新手入门的C语言经典实例(持续更新)

1.题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
考察:判断、循环、输出

#include<stdio.h>
int main()
{
    int i,j,k,number;
    printf("\n");
    for(i=1;i<5;i++) { // 以下为三重循环
        for(j=1;j<5;j++) {
            for (k=1;k<5;k++) { // 确保i、j、k三位互不相同
                if (i!=k&&i!=j&&j!=k) { 
                    printf("%d,%d,%d\n",i,j,k);
                    number++;
                }
            }
        }
    }
    printf("一共有%d种排列方法\n",number);
}

在这里插入图片描述

2.题目:输入三个整数x,y,z,请把这三个数由小到大输出。
考察:判断、循环、输入、输出
算法:两两比较、交换位置

#include <stdio.h> 
int main()
{
    int x,y,z,t;
    printf("\n请输入三个数字:\n");
    scanf("%d%d%d",&x,&y,&z);
    if (x>y) 
	{ /*交换x,y的值*/
        t=x;x=y;y=t;
    }
    if(x>z) 
	{ /*交换x,z的值*/
        t=z;z=x;x=t;
    }
    if(y>z) 
	{ /*交换z,y的值*/
        t=y;y=z;z=t;
    }
    printf("从小到大排序: %d %d %d\n",x,y,z);
}

在这里插入图片描述

3.计算1+2+3……+100的值
两种方法计算,思考不一样的算法思路。
第一种方法就是循环累加;
第二种方法为高斯方法“首项加末项乘以项数除以二”。
这里可以初步窥探到算法的苗头。

#include <stdio.h>
int main()
{
	int sum=0;
	int i;
	for(i=1;i<=100;i++)
		{	
			sum=sum+i;
		}
	printf("从1加到100的结果为%d\n",sum);
	return 0;
}
#include <stdio.h>
int main()
{
	int i=1;//首项 
	int j=100;//末项 
	int sum;//和 
	sum=(i+j)*j/2;//首项加末项乘以项数除以二 
	printf("从1加到100的结果为%d\n",sum);
	return 0;
}

在这里插入图片描述

4.9*9乘法表

#include<stdio.h>
int main()
{
    int i,j,result;
    printf("\n");
    for (i=1;i<10;i++)
    {
        for(j=1;j<=i;j++)
        {
            result=i*j;
            printf("%d*%d=%-3d",i,j,result); /*-3d表示左对齐,占3位*/
        }
    printf("\n"); /*每一行后换行*/
    }
}

在这里插入图片描述

5.画菱形,输入行数,输出菱形

#include <stdio.h>
void main()
{
	int i,j,k,n;
	printf("请输入行数n:\n");
	scanf("%d",&n);
	for(i=1;i<=n-((n-1)/2);i++)
	{
		for(j=1;j<=(n-(2*i-1))/2;j++)
			printf(" ");
		for(k=1;k<=2*i-1;k++)
			printf("*");
		printf("\n");
	}
	for(i=1;i<=n-((n+1)/2);i++)
	{
		for(j=1;j<=(n-((n-2)-((i-1)*2)))/2;j++)
			printf(" ");
		for(k=1;k<=((n-2)-((i-1)*2));k++)
			printf("*");
		printf("\n");
	}
}

在这里插入图片描述

6.简易计算器

#include<stdio.h>
int main()
{
	while(1)
	{		
	   double number1=0.0;
	   double number2=0.0;
	   char operation=0;
	
	   printf("\n请输入要计算的式子:\n");
	   scanf("%lf%c%lf",&number1,&operation,&number2);
	
	   switch(operation)
	   {
	      case '+':
	           printf("=%lf\n\n",number1+number2);
	          break;
	
	      case '-':
	           printf("=%lf\n\n",number1-number2);
	           break;
	
	      case '*':
	           printf("=%lf\n\n",number1*number2);
	           break;
	
	      case '/':
	           if(number2==0)
	             printf("\n\n被除数不能为0!\n");
	           else
	             printf("=%lf\n\n",number1/number2);
	           break;
	
	      case '%':
	           if((long)number2==0)  
	             printf("\n\n被除数不能为0!\n"); 
	           else
	             printf("=%ld\n",(long)number1%(long)number2);      
	           break;
	
	      default:
	          printf("请重新输入!!\n"); 
	          break;          
	    }	
	}   
    return 0;
}

在这里插入图片描述

7.图形代码

#include <stdio.h>
int main()
{
        char a = '*';
        char b = '.';
		int i,j;
        for( i = 0 ; i < 10 ; i++)
        {
                for( j = 0 ; j < 19 ; j ++)
                {
                        if(j+i==9 || j-i==9)
                        {
                                printf("%c",a);
                        }
                        else
                        {
                                printf("%c",b);
                        }
                }
                printf("\n");
        }

        for( i = 0 ; i < 10 ; i++)
        {
                for( j = 0 ; j <19 ; j++)
                {
                        if(j-i<=0 || j+i>=18)
                        {
                                printf("%c",a);
                        }
                        else
                        {
                                printf("%c",b);
                        }
                }
                printf("\n");
        }        
        return 0;
}

在这里插入图片描述

// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';
// An highlighted block
var foo = 'bar';

***恶搞代码

#include<windows.h>
int main()
{
    if(MessageBox(NULL,"你是猪吗?","问卷调查",MB_YESNO|MB_ICONQUESTION)!=IDYES) 
	while(MessageBox(NULL,"请做出正确的回答:你是猪吗?","问卷调查",MB_YESNO|MB_ICONWARNING)!=IDYES) ;
    MessageBox(NULL,"感谢您做出了正确的回答!","问卷调查报告单",MB_OK|MB_ICONASTERISK);
}
图1
图2
图3
图4
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值