C语言编程问题,高手请进,急问!
不知道这题有什么约束,C语言自带数学函数库,里面有开方函数,如果这样就不是什么高手请进了,如果你想知道怎么写开方,那你可以进入math头文件,找到POW函数自己研究一下,高手是如何写的
数学法:
原数为 a1a2……an;
从a1开始向后找到第一个ai比ai+1大的,删掉ai;
若找不到,删掉a1;
程序:
只用了一次循环,哈哈
#include <stdio.h>
int main()
{
char str[200];
printf( "Input a number : " );
scanf( "%s", str );
int flag = 0; /* 记录是否找到了要被删掉的数 */
char *p = str;
while ( *p ) /* 当*p != '\0'时 */
{
if ( flag ) /* 找到了要被删掉的数,则一次打印剩下的数 */
{
printf( "%s
", p );
return 0;
}
else if ( *p <= *(p+1) ) /* 找到被删掉的数前,挨个打印 */
{
printf( "%c", *p );
}
else if ( *(p+1) ) /* 如果*(p+1)!='\0'的话,则找到了被删掉的数 */
{
flag = 1;
}
++p;
}
if ( !flag ) /* 如果一遍循环并没有找到要被删掉的数 */
{
printf( "%c", *(p-1) ); /* 因为上面的while只会打印n-1个数,所以要补上最后一个数 */
printf( "
" ); /* 用空格将应该删掉的第一个数覆盖掉,比较偷懒的方法 */
}
return 0;
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
如果是在一些开发环境中,可以将判断按键是不是为回车写在OnKeyPress事件上。
下面只给出一个输出按的什么键的程序
int getkey()
{
int c;
c = getchar();
putchar(c);
return c;
}
do{
while(bioskey(1)==0){要执行其他的语句;}
key=bioskey(0);
function(key);/*function为按下键后相应处理的函数,以按键为参数*/
}while(k!=ESC);/*按esc时跳出*/
当然,要有头文件
char c;
if(kbhit())
{
c=getch();
printf("%c",c);
}
else {.....}
conio.h 中的kbhit()
相关视频
C语言编程问题.请高手进(附源码)!!!HELP
printf("请输入所需要的功能:");scanf("%d",&a);switch(a){ case 1:fcxxwh();break;case 2:;break;case 3:;break;case 4:;break;default:printf("输入错误,请重新打开程序输入!");} } void fcxxwh(void){int a,b,c;printf("1.录入\\t");printf("2.修改\\t
C语言求解,高手进
后面的题目等下继续发上来 1、include "stdio.h"include "string.h"int main(){ int i=0;char str[100];printf("Input String:\\n");gets(str);for(;i<strlen(str);i+=2)printf("%c",str[i]);} 2、include "stdio.h"include "string.h"void mcopy(char *str,int m){ int i=0...
请各位高手帮忙做几道c语言的编程题
int a,b,c,d;\/\/ int m,n;for(i = 1000; i < 10000; i++){ a = i\/1000;b = i%1000\/100;c = i%100\/10;d = i%10;m = a*10+b;n = c*10+d;if((m+n)*(m+n) == i)printf("%d ",i);} } (4)include <stdio.h> void main(){ int a[10]={0,1,2,3,4...
C语言高手 请告诉我几道简单的题! 我想搞明白 谢谢
pt[2]→ h ,i, j 而pt对应的其实就是pt[0]所以 pt+1 =pt[1]2.定义sum的时候 由于没有对sum进行初始化,所以编译器会对sum进行随机赋值,所以sum将会被分配到一个随机数,而在求和的时候累加之后的和当然不确定 3.C 第一次调用fun函数的时候,fun(a+fun(d)) 应该是在进入参数(a+fun(...