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);
}
|
|
|
|
更多推荐
【C语言】新手入门的C语言经典实例(持续更新)
发布评论