c语言增长
⑴ c语言编程实现:一组数字的自动增长,并输出到指定文件中去
简单的整理,仅供参考:
#include<stdio.h>
#defineBUFFER_LEN3
#defineBUFFER_SIZE64
voidgetData(charbuffer[BUFFER_LEN][BUFFER_SIZE],size_tsize,int*repeatTimes)
{
printf("plz,input3strings,e.1251511212151564646165 ");
scanf_s("%s%s%s",buffer[0],size,buffer[1],size,buffer[2],size);
printf("plz,inputyourrepeattimes:");
scanf_s("%d",repeatTimes);
}
voidsaveInfo(constchar*filePath,charbuffer[BUFFER_LEN][BUFFER_SIZE],intrepeatTimes)
{
FILE*pFile=NULL;;
if(fopen_s(&pFile,filePath,"w+")!=EOF)
{
for(inti=0;i<repeatTimes;++i)
{
if(i!=repeatTimes-1)
{
if(fprintf_s(pFile,"%s,%s,%s,",buffer[0],buffer[1],buffer[2])==EOF)
{
printf("savedataerror ");
}
}
elseif(fprintf_s(pFile,"%s,%s,%s",buffer[0],buffer[1],buffer[2])==EOF)
{
printf("savedataerror ");
}
}
fclose(pFile);
}
}
voidrepeatSaveData()
{
charcmd=0;
charbuffer[BUFFER_LEN][BUFFER_SIZE]={0};
intrepeatTimes=0;
do{
fflush(stdin);
getData(buffer,BUFFER_SIZE,&repeatTimes);
printf(": ");
for(inti=0;i<BUFFER_LEN;++i)
{
printf("%s ",buffer[i]);
}
printf("repeat%dtimes!ture:1,reinput:0 ",repeatTimes);
fflush(stdin);
while(true)
{
cmd=getchar();
if(cmd=='1'||cmd=='0')break;
}
}while(cmd=='0');
saveInfo("r.txt",buffer,repeatTimes);
}
intmain(intargc,char*argv[])
{
repeatSaveData();
return0;
}
⑵ c语言中数组动态增长有哪些方法
一。在原数组单元后面是没法再扩长的,因为后面的单元没法保证一定有。所以,数组原址动态增长肯定是不行的;
二。要么定义长一点的数组,要么自已把N个数组用链表串起来,但很繁琐;
三。重新分配更长的数组,把原数组数据复制过来,再释放掉原数组,这是一般动态数组模块的普遍做法。但效率很低。
例如下面方法都是重新分配更长的数组空间:
1
2
3
int* a=(int*)malloc(n*sizeof(int));//n是数组的大小。
int* a=(int*)calloc(n,sizeof(int));//n是数组的大小。
int* a=(int*)realloc(a,m*sizeof(int));//m新数组的大小。
⑶ c语言增长率用rate表示类似还有那些
growRate。C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。c语言增长率用rate表示类似还有growRate。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
⑷ c语言gdp每年增长%7.5.多少年后gdp翻一倍
#include<stdio.h>
int main()
{int n;
float gdp=1.0;
for(n=0;gdp<2;n++)
gdp*=1.075;
printf("GDP每年增长7.5%%,%d年后翻一番 ",n);
return 0;
}
⑸ c语言随机数随时间一直增长
因为你的随机数种子是时间 所以程序每次第一次执行的随机数 是根据时间来的 ..
想要每次执行程序 打印出来的随机数不一样的话 ..
srand((unsigned)time(NULL));
for(int j =0;j<1000;j++)
{
i= rand()%10000;
}
printf("%d",i);
这样可以达到你的要求 ..
⑹ c语言计算10年后我国国民生产总值与现在相比增长多少百分比只用main增加printf语句用来提示输入输出什么
#include
<stdio.h>
int
main()
{
float
r,p;
int
i,n;
i=1;
p=1;
n=10;
printf("增长率是");
scanf("%f",&r);
while(i<=n)
{
p=(1+r)*p;
i=i+1;
}
printf("10年后我国国民生产总值与现在相比增长多少百分比为%f",p);
//getchar(0);
return
0;
}
我刚刚用编译器看了下,估计是你的输入法切换的问题,有的地方的;和()是用中文打的,这样是不识别的,还有getchar();没什么用,当不能回显的时候才用
⑺ c语言中数组动态增长有哪些方法
可以,但不能是静态数组如int a[50];左边分配在堆栈上,(分配在堆栈上的变量)不能在编译时不知道分多少空间,并且分了多少空间就是多少。
如果想让数组大小动态分配,可以使用下面做法,记得用完要free:
int*a=(int*)malloc(n*sizeof(int));//n是数组的大小。
或者这样calloc函数的一个好处就是分配完内存区域后会自动把该区域清零,所以特别适合数组:
int*a=(int*)calloc(n,sizeof(int));//n是数组的大小。
延长数组大小的话这样做:
a=(int*)realloc(a,m*sizeof(int));//m新数组的大小。并且,原来malloc或者calloc的内存区域会自动被free掉,不用你操心。
⑻ 用c语言求“增长率”时为什么会这样呢
printf 函数第一个参数里,%d 用来显示整数,%f 用来显示浮点数。
你把一个 double(双精度浮点数)当作整数显示自然是不会对的,用 %f 就行了。
⑼ c语言年增长率怎么表示
n年数据的增长率=【(本期/前n年)^{1/(n-1)}-1】×100%。年均增长率=【N次根号下(末年/首年)】-1,N=年数-1,计算的结果只能适用于以首年算末年,若算中间年份则与原值不相等。
⑽ C语言编程,关于人口增长计算的编写
#include<stdio.h>
int person(double,double );
void main()
{
double p=13,man=12.3;
int y;
y=person(man,p);
printf("需要%d年 ",y);
}
int person(double man,double p)
{
double spr,sum,aut,win;
int year=0;
while(man<=p)
{
spr=man*0.02+man;
sum=spr*0.015+spr;
aut=sum*0.01+sum;
win=aut*0.005+aut;
man=win;
year++;
}
return (year);
}