c語言遞增數
❶ c語言遞增加法問題
第300是指第三百次?
#include <stdio.h>
int main()
{
int k = 1, s;//注意啊,s有可能超過int范圍,那就得用longlong了
for (int i = 1; i <= 300; i++)
{
k += 0.2;
s += k;
}
printf("%d", s);
return 0;
}
如果真是這個問題的話……數學方法直接KO不就得了……為啥非得遞增啊= =
❷ c語言中a到z,遞增如何表示
如果a和z都是整數
for(i=0;i<(z-a);i++)
{
a++
printf("%d",a)
}
如果是字母
char a='a',z='z';int c,i;
c='z'-'a'
for(i=0;i<c;i++)
printf("%c",a+i)
❸ c語言 判斷遞增
你展示的int dec(int a[],int n)函數 不是遞歸函數
遞歸方法如下:
#include<stdio.h>
intdec(inta[],intn)
{
if(n==0)
return1;//遞增
if(a[n]>a[n-1])
returndec(a,n-1);
else
return0;//不遞增
}
voidmain()
{
inti,a[10],n;
printf("請輸入10個數: ");
for(i=0;i<10;i++)//不要分號";"
scanf("%d",&a[i]);
printf("請輸入要判斷前多少個元素: ");
scanf("%d",&n);
if(dec(a,n-1)==0)
printf("不遞增 ");
else
printf("遞增 ");
}
非遞歸的方法如下:
#include <stdio.h>
int dec(int a[],int n)
{
int i,j;
for(i=0;i<n-1;i++)
{
if(a[i]>=a[i+1])
{
return 0; // 不遞增
}
}
return 1; //遞增
}
void main()
{
int i,a[10],n;
printf("請輸入10個數:
");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("請輸入要判斷前多少個元素:
");
scanf("%d",&n);
if(dec(a,n-1)==0)
printf("不遞增
");
else
printf("遞增
");
}
❹ c語言, 如何實現寫數字文件名的遞增,例如,結束文件1.txt 的讀寫,繼續打開2.txt進行操作 。。。3.txt
用一個變數保存文件名,比如整型變數。 然後遞增增加這個整型變數,通過sprintf生成文件名。
再打開。 比如這樣。
intindex=1;
charfname[100];
FILE*fp;
for(index=1;index<100;index++)
{
sprintf(fname,"%d.txt",index);
fp=fopen(fname,"w");
//.....
fclose(fp);
}
❺ C語言程序設計 遞增有序數組
#include <stdio.h>
#define M 10
#define N 10
void merge(int a[],int b[],int c[],int m, int n)
{
int i,j,k;
i=0;
j=0;
k=0;
while(i<m&&j<n)
if(a[i]<=b[j])
c[k++]=a[i++];
else c[k++]=b[j++];
while (i<m)
c[k++]=a[i++];
while (j<n)
c[k++]=b[j++];
}
void main()
{
int a[M],b[N],c[M+N];
int i;
printf("輸入遞增數組a\n");
for(i=0;i<M;i++)
{
printf("第%d個:",i+1);
scanf("%d",&a[i]);
}
printf("\n輸入遞增數組b\n");
for(i=0;i<N;i++)
{
printf("第%d個:",i+1);
scanf("%d",&b[i]);
}
merge(a,b,c,M,N);
printf("\n\n合並後的數組是:\n");
for(i=0;i<M+N;i++)
printf("%d ",c[i]);
}
運行的一個示例:
輸入遞增數組a
第1個:4
第2個:8
第3個:9
第4個:78
第5個:90
第6個:91
第7個:92
第8個:93
第9個:94
第10個:95
輸入遞增數組b
第1個:1
第2個:2
第3個:4
第4個:5
第5個:6
第6個:10
第7個:11
第8個:12
第9個:13
第10個:14
合並後的數組是:
1 2 4 4 5 6 8 9 10 11 12 13 14 78 90 91 92 93 94 95 Press any key to continue
❻ c語言求最長遞增序列
int findLengthOfLCIS(int* nums, int numsSize){
if(numsSize <=1 )
{
return numsSize;
}
int ans, cnt, i;
ans = 1; //保存最長數
cnt = 1; //記錄最長數
for(i=0; i<numsSize-1; i++)
{
if(nums[i+1]>nums[i]) //如果遞增,計數加一,否則重新算起
{
cnt++;
}else{
cnt = 1;
}
ans = cnt>ans ? cnt: ans; //更新並保存之前最長數
}
return ans;
}
❼ c語言程序 數字遞增
#include <stdio.h>
void main()
{int i;
for(i=1;i<100;i++)
printf("%3d",i);
getch();
}
100可以根據需要改動,也可以增加一個輸入函數來實現
❽ 求教C語言中的遞增用法!
for語句中,先執行的是printf, 然後才執行y=(++i*5)+10;
而y的初值是55,所以給你一種錯覺好像++i跟i++是一樣的返回值。
如果你y不賦初值,你應該就看出來差別了。
你的for語句程序段跟以下程序相同,可以幫助你理解。
x=1;
for(;y<=75;)
{
printf("%10d%10d\n",x,y);
y=(++x*5)+50; /*可變成你的增量表達式*/
}
❾ C語言求字元串中連續遞增數字子串,希望能有比較簡單易懂的方式!謝謝
#include <stdio.h>
int main()
{
char str[100], *p;
int digit;
scanf("%s", str);
digit=0;
for(p=str;;p++)
{
if(*p>=Ɔ'&&*p<=Ə')
{
if(digit==0)
{
digit=1;
}
else
{
if(*(p-1)==*p-1)
{
digit++;
}
else
{
if(digit>1)
{
for(;digit>0;digit--)
printf("%c", *(p-digit));
printf(" ");
}
digit=1;
}
}
}
else
{
if(digit>1)
{
for(;digit>0;digit--)
printf("%c", *(p-digit));
printf(" ");
}
digit=0;
if(*p=='