c语言编程代码

发布网友 发布时间:2022-04-20 10:27

我来回答

15个回答

热心网友 时间:2022-04-22 12:23

两种方法我写在一起,可以拆开。

#include <stdio.h>

void finda1(char a[3][10]);

void finda2(char a[3][10]);

void show(char (*p)[10]);

int main()

{

    char a[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};

    printf("原数组内容:\n");

    show(a);

    printf("\n1、用数组指针的方法(函数finda1):\n");

    finda1(a);

    printf("执行后:\n");

    show(a);


    printf("\n---------------------\n");


    char b[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};

    printf("原数组内容:\n");

    show(a);

    printf("\n2、用指针数组的方法(函数finda2):\n");

    finda2(b);

    printf("执行后:\n");

    show(b);

    return 0;

}

void finda1(char a[3][10])

{

    int i,j;

    char (*p)[10]=a;

    for(i=0;i<3;i++)

        for(j=0;j<10;j++)

            if(p[i][j]=='a')

                printf("发现:第%d行第%d个元素是‘a’,已替换\n",i+1,j+1),p[i][j]='1';

}

void finda2(char a[3][10])

{

    int i,j;

    char *p[3]={&a[0][0],&a[1][0],&a[2][0]};

    for(i=0;i<3;i++)

        for(j=0;j<10;j++)

            if(p[i][j]=='a')

                printf("发现:第%d行第%d个元素是‘a’,已替换\n",i+1,j+1),p[i][j]='1';


}

void show(char (*p)[10])

{

    int i,j;

    for(i=0;i<3;i++,printf("\n"))

        for(j=0;j<10;j++)

            printf("%c ",p[i][j]);

}

热心网友 时间:2022-04-22 13:41

代码:

#include

int main()

{

printf("Hello World.\n");

return 0;

}



扩展资料:

代码解析:

1.其中第一行的#include ,这行代码是编译预处理指令,用来提供输入输出函数的声明和宏的定义,全局量的定义这些信息。stdio.h是系统提供的一个文件名,stdio是为standard input & output的缩写,意为标准输入输出,文件后缀.h的意思是头文件(header file),因为这些文件都是放在程序各文件模块的开头的。总的来说,输入输出函数的相关信息已事先放在stdio.h文件中,然后,要用#include指令把这些信息调入供使用。

2.void main(){},main是主函数的函数名,表示这是一个主函数,每一个C源程序都必须有且只能有一个主函数。

3.函数调用语句,即调用printf("Hello World \n");语句 ,printf函数的功能是把要输出的内容送到显示器去显示,即打印输出Hello World到windows 控制台下,其中\n为转义字符,具有转行的功能。

4.printf函数是一个由系统定义的标准函数,可在程序中直接调用。

热心网友 时间:2022-04-22 15:16

例如:输入某年某月某日,判断这一天是这一年的第几天。
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊
      情况,闰年且输入月份大于3时需考虑多加一天。
2.程序源代码:

复制代码 代码如下:

main()
{
int day,month,year,sum,leap;
printf("\nplease input year,month,day\n");
scanf("%d,%d,%d",&year,&month,&day);
switch(month)/*先计算某月以前月份的总天数*/
{
 case 1:sum=0;break;
 case 2:sum=31;break;
 case 3:sum=59;break;
 case 4:sum=90;break;
 case 5:sum=120;break;
 case 6:sum=151;break;
 case 7:sum=181;break;
 case 8:sum=212;break;
 case 9:sum=243;break;
 case 10:sum=273;break;
 case 11:sum=304;break;
 case 12:sum=334;break;
 defaultrintf("data error");break;
}
sum=sum+day;  /*再加上某天的天数*/
 if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/
  leap=1;
 else
  leap=0;
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
printf("It is the %dth day.",sum); }

热心网友 时间:2022-04-22 17:07

#include "stdafx.h" //这是 VS 预编译头。其他系统删除。
#include<stdio.h>
#include<stdlib.h> //使用 system("pause"); 时需要。
//MS 否决了 scanf 等函数,加上下句,任然可用。其他系统删除。
#pragma warning(disable:4996)

// VS 标准主函数声明,其他系统请根据系统更改。
int _tmain(int argc, _TCHAR* argv[])
{
char ch[32];
int i, k, t;
printf("请输入手机号:");
while (1)
{
scanf("%s", ch);
i = 0; k = 0;
while (ch[i] != 0)
{
if (ch[i] < '0' || ch[i] > '9')
{
printf("手机号码不能含有非数字字符,请重新输入:");
k = 1;
break;
}
i++;
}
if (k)
continue;
if (i < 11)
{
printf("手机号码小于 11 位,请重新输入:");
continue;
}
k = 1;
t = (ch[0] - '0') * 100 + (ch[1] - '0') * 10 + (ch[2] - '0');
switch (t)
{
case 134: case 135: case 136: case 137: case 138: case 139: case 147: case 150: case 151: case 152: case 157: case 158: case 159: case 182: case 187: case 188:
printf("你用的是移动手机");
break;
case 130: case 131: case 132: case 155: case 156: case 185: case 186:
printf("你用的是联通手机");
break;
case 133: case 153: case 180: case 1:
printf("你用的是电信手机");
break;
default:
printf("没有这样的号码,请重新输入:");
k = 0;
break;
}
if (k)
break;
else
continue;
}
printf("\n\n");

system("pause"); //防止窗口一闪而过
return 0;
}

热心网友 时间:2022-04-22 19:15

我先说思路,你之后再看下面我写的代码,效果可能比较好。
-------------思路------------------------
若ni是偶数,则ni+1=ni/2;若ni是奇数,则ni+1=3ni+1;若ni=1,则数列结束。
这个用个函数判断,比如定义个contrast(...),再在函数内用if(){}else{}做判断。
考虑到你要用void hailstones(int x[],int n0,int *maxp,int *minp)
那么就可以在void hailstones(int x[],int n0,int *maxp,int *minp)内部搞一个函数嵌套,
把contrast(...)内嵌到void hailstones(int x[],int n0,int *maxp,int *minp)中,
而x[]数组,则为了方便,你可以在contrast()的形参表中放一个int [],
即contrast(int x[],...).
又由于要键盘输入数据值n0,则可以用contrast(int a[],int n0)
于是函数建立完毕,为:contrast(int x[],int n0);【需要注意的是函数接受中要接收的是数组名】
----------------------代码如下:----------------------------------------
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int contrast(int a[],int n0);
void hailstones(int x[],int n0,int *maxp,int *minp);
#define Max 100
int main()
{
int n0;
int a[Max],*Maxp,*Minp;
printf("请输入n0的值:");
scanf("%d",&n0);
printf("\n--------\n结果为:\n--------\n");
hailstones(a,n0,Maxp,Minp);
return 0;
}
int contrast(int x[],int n0)//计算产生序列
{
int i;//i是因为i专门做数组的下标
x[0]=n0;
for(i=0;x[i]!=1;i++)
{
if(x[i]%2==0)
x[i+1]=x[i]/2;
if(x[i]%2==1)
x[i+1]=3*x[i]+1;
}
x[i]=1;
return (i+1);//之所以要加1(i+1),是因为n0也是一个数
}
void hailstones(int x[],int n0,int *maxp,int *minp)
{
int i; //i用来计算x[]的下标,也就是知道产生序列数量
int Maxcount=0,Mincount=0,j=0;/*用作循环,和i进行比较,直到j=i为止,把所有产生序列输出*/
maxp=&Maxcount,minp=&Mincount;
i=contrast(x,n0);//计算产生序列的数量
while(j!=i)
{
if(n0>x[j])
Mincount++;
if(n0<x[j])
Maxcount++;
j++;
}
printf("产生序列为:\n");
j=0;
for(j=0;j<=i-1;j++) /*之所以要减1(i-1),是因为虽然有i个数,但下标从0开始[0 ~ i-1]之和为i*/
printf(" x[%d]=%d ",j,x[j]);
printf("\n");
printf("Max=%lu,Min=%lu\n",*maxp,*minp);
}
值得注意的是,我这个代码有一个问题,就是在main()函数里定义指针时没有给指针赋值,于是编译器出现警告:
warning C4700: local variable 'Minp' used without having been initialized
warning C4700: local variable 'Maxp' used without having been initialized
但实际上这个问题并没有对代码本身产生任何影响,只不过作为编译器,在编译时机械的把一切没有使用的变量、一切没有赋值的指针都看成有风险的,所以会警告,【但运行以及结果照常】,所以大可不必担心这个代码有误,你完全可以忽略这个警告,因为它真的没有任何问题。

热心网友 时间:2022-04-22 21:40

#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;
}

注释详细,条理清晰!

热心网友 时间:2022-04-23 00:21

用c语言编写的代码程序是一个源程序。源程序是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言

源程序是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。

在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。

C语言是一种高级语言,C语言源程序经过C语言编译程序编译之后,生成一个后缀为.OBJ的二进制文件(称为目标文件),最后还要由称为“连接程序”(Link)的软件,把此.OBJ文件与c语言提供的各种库函数连接在一起,生成一个后缀. EXE的可执行文件。显然C语言不能立即执行。

热心网友 时间:2022-04-23 03:19

// 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,&times));

    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,&times) / 1000 / 100);


    return 0;

}

---

若纸厚度0.006cm,按题操作43次,纸高度远大于地月距离386000公里!

若纸厚度0.004388cm,按题操作43次,纸高度等于地月距离386000公里。

程序执行结果:

热心网友 时间:2022-04-23 06:34

#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;
}

热心网友 时间:2022-04-23 10:05

1。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
#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");
}

热心网友 时间:2022-04-23 13:53

#include<stdio.h>

void main() { int n; double h;

  h=0.00006; n=0; while ( h<386000000 ) { n++; h*=2; }

  printf("%d\n",n);

}

热心网友 时间:2022-04-23 17:58

#include<stdio.h>
#define N 200
struct child
{
char name[10];
char sex[3];
int age;
int height;
float weight;
struct {
int year;
int month;
int day;
}bdate;
}ch[N];
void input()
{
int i;
for(i=0;i<N;i++)
{
printf("\n请输入第%d名小朋友信息:\n",i+1);
printf("姓名:");
scanf("%s",ch[i].name);
printf("性别:");
scanf("%s",ch[i].sex);
printf("年龄:");
scanf("%d",&ch[i].age);
printf("身高:");
scanf("%d",&ch[i].height);
printf("体重:");
scanf("%f",&ch[i].weight);
printf("出生日期[YYYY-MM-DD]:");
scanf("%d-%d-%d",&ch[i].bdate.year,&ch[i].bdate.month,&ch[i].bdate.day);
}
}
void sort()
{
struct child ct;
int i,j;
for(i=0;i<N-1;i++)
for(j=0;j<N-i-1;j++)
if(ch[j].height<ch[j+1].height)
{
ct=ch[j];
ch[j]=ch[j+1];
ch[j+1]=ct;
}
}
void output()
{
int i;
printf("\n\t幼儿园小朋友一览(依身高排序)\n");
printf("===================================================\n");
printf(" 姓名 性别 年龄 身高 体重 出生日期 \n");
printf("===================================================\n");
for(i=0;i<N;i++)
printf(" %-8s %-2s %2d %d %3.1f %d.%d.%d\n",ch[i].name,ch[i].sex,ch[i].age,ch[i].height,ch[i].weight,ch[i].bdate.year,ch[i].bdate.month,ch[i].bdate.day);
}
void main()
{
input();
sort();
output();
}
//分给的忒少,呵呵

热心网友 时间:2022-04-23 22:19

是真的,见如下求解

2↑43×0.006=5.277655813×10↑10厘米
=5.277655813×10↑8米
=5.277655813×10↑5千米
=527,765.5813千米大于386,000千米

热心网友 时间:2022-04-24 02:57

#include <stdio.h>
#include <stdlib.h>

int isLeepYear(int year)
{
return (year%4==0&&year%100!=0||year%400==0);
}

int getDaysOfMonth(int year,int month)
{
int nDays[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},nDay;
if(year<0||month<1||month>12) return 0;

nDay=nDays[month];
if(isLeepYear(year)&&month==2) nDay++;

return nDay;
}

int main()
{
int year,month;
printf("请输入年份和月份:\n");
scanf("%d %d",&year,&month);
printf("%d年%d月有%d天\n",year,month,getDaysOfMonth(year,month));
system("pause");
return 0;
}

热心网友 时间:2022-04-24 07:52

Guys, hope you can solve such issue by yourself in the future. This is easy. There are maybe some issue in the program, I don't compile it.
#include <stdio.h>
#define VALIAD 4
int IsBoxCanParcelBall(double long, double wide, doube high, double radius);

int main(int argc, char* argv[])
{
double dlong, dwide, dhigh, dradius;

printf("This program is to test whether a box can parcel a ball, just for fun.\n");
printf("Please input long, wide, high of box, and radius of ball,
if you want to quit, please input ‘q’ and Enter keyboard\n");
while(1) {
if(VALIAD != scanf("%f%f%f%f", &dlong, &dwide, &dhigh, &dradius){
break;
}

printf("Result:");
if(IsBoxCanParcelBall(dlong, dwide, dhigh, dradius)) {
printf("Yes[Y]\n");
} else {
printf("No[N]\n");
}

printf("Please input long, wide, high of box, and radius of ball,
if you want to quit, please input ‘q’ and Enter keyboard\n");\n");
}

return 0;
}

int IsBoxCanParcelBall(double long, double wide, doube high, double radius)
{
if ((long > 2*radius) && (wide > 2*radius) && (high > 2*radius)) {
return 1;
} else {
return 0;
}
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com