#include <stdio.h>
/*
1
121
12321
121
1
*/
int main() {
int i, j, n = 0;
printf("输入一个正整数(1~9): ");
scanf("%d", &n);
if (n < 0 || n > 9) {
// 只处理 1 ~ 9 的整数(两位数以上的打不出菱形效果)
return 0;
}
// 打印菱形上半部分(包括中线)
for (i = 1; i <= n; i++) {
// 打印一行
// 1. 打印行前面的空格数
for (j = 1; j <= n - i; j++) {
printf(" ");
}
// 2. 打印升序的数: 123...
for (j = 1; j <= i; j++) {
printf("%d", j);
}
// 3. 打印降序的数: ...21
for (j = i - 1; j >= 1; j--) {
printf("%d", j);
}
// 4. 换行
printf("\n");
}
// 打印菱形下半部分
for (i = n - 1; i >= 1; i--) {
// 打印一行
// 1. 打印行前面的空格数
for (j = 1; j <= n - i; j++) {
printf(" ");
}
// 2. 打印升序的数: 123...
for (j = 1; j <= i; j++) {
printf("%d", j);
}
// 3. 打印降序的数: ...21
for (j = i - 1; j >= 1; j--) {
printf("%d", j);
}
// 4. 换行
printf("\n");
}
return 0;
}
注释详细,条理清晰!
源程序是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。
在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。
C语言是一种高级语言,C语言源程序经过C语言编译程序编译之后,生成一个后缀为.OBJ的二进制文件(称为目标文件),最后还要由称为“连接程序”(Link)的软件,把此.OBJ文件与c语言提供的各种库函数连接在一起,生成一个后缀. EXE的可执行文件。显然C语言不能立即执行。
// Microsoft Visual C++ 2010学习版
#include <stdio.h>
double add_thickness(double *thickness_ptr, int *times_ptr)
{
*thickness_ptr *= 2;
if (*times_ptr == 1)
{
return *thickness_ptr;
}
(*times_ptr)--;
return add_thickness(thickness_ptr, times_ptr);
}
int main()
{
double thickness = 0.006; // 0.006cm
int times = 43;
printf("设定纸张厚度:%f cm\n", thickness);
printf("算出地月距离:%f cm\n", add_thickness(&thickness,×));
printf("算出地月距离:%f km\n", thickness / 1000 / 100);
// 地月距离
double distance = (double)386000 * 1000 * 100; // cm
// 操作43次
for (int i = 1; i <= 43; i++)
{
distance /= 2;
}
printf("纸张厚度应为:%f cm\n", distance);
// 检验add_thickness()正确性
times = 43;
printf("按上述厚度,地月距离:%f km\n", add_thickness(&distance,×) / 1000 / 100);
return 0;
}
---
若纸厚度0.006cm,按题操作43次,纸高度远大于地月距离386000公里!
若纸厚度0.004388cm,按题操作43次,纸高度等于地月距离386000公里。
程序执行结果:
#include <stdio.h>
#include <ctype.h>
int main(void)
{
char zf;
printf(" 请输入一个字符(直接回车可退出):");
while((zf=getchar()) != '\n')
{
while(getchar() != '\n')
continue;
if(isalpha(zf))
printf(" 1\n\n");
else if(isdigit(zf))
printf(" 2\n\n");
else
printf(" 3\n\n");
printf(" 请输入一个字符(直接回车可退出):");
}
return 0;
}
#include <stdio.h>
int main(void)
{
int i,j,temp,sz[4];
for(i=0;i<4;i++)
{
printf(" 请输入第 %d 个整数:",i+1);
scanf("%d",&sz[i]);
}
for(i=0;i<3;i++)
{
for(j=i+1;j<4;j++)
{
if(sz[i]>sz[j])
{
temp=sz[j];
sz[j]=sz[i];
sz[i]=temp;
}
}
}
for(i=0;i<4;i++)
printf(" %d",sz[i]);
return 0;
}
#include <stdio.h>
int main()
{
char a;
a=getchar();
if(a<='z'&&a>='a'||a<='Z'&&a>='A') putchar('1');
else if(a<='9'&&a>='0') putchar('2');
else putchar('3');
return 0;
}
2.。。。。。。。。。。。。。。。。。。。。。。。。。。
#include <stdio.h>
int main()
{
int a,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a>b) {t=a;a=b;b=t;}
if(b>c) {t=b;b=c;c=t;}
if(c>d) {t=c;c=d;d=t;}
if(a>b) {t=a;a=b;b=t;}
if(b>c) {t=b;b=c;c=t;}
if(a>b) {t=a;a=b;b=t;}
printf("%d,%d,%d,%d",a,b,c,d);
return 0;
}
3.。。。。。。。。。。。。。。。。。。。。。。。。。。。
#include <stdio.h>
int main()
{
int a,g,s,b,q;
scanf("%d",&a);
g=a%10;
s=a/10%10;
b=a/100%10;
q=a/1000;
if(q!=0) printf("%d,%d%d%d%d",4,g,s,b,q);
else if(b!=0) printf("%d,%d%d%d",3,g,s,b);
else if(s!=0) printf("%d,%d%d",2,g,s);
else printf("%d,%d",1,g);
}
4.。。。。。。。。。。。。。。。。。。。。。。。。
#include <stdio.h>
int main()
{
int a,g,s,b;
scanf("%d",&a);
g=a%10;
s=a/10%10;
b=a/100%10;
if(a==g*g*g+s*s*s+b*b*b) printf("YES");
else printf("no");
}