c语言删数问题【问题描述】通过键盘输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序,将组成一个新的正整数
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/21 16:21:10
c语言删数问题
【问题描述】
通过键盘输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序,将组成一个新的正整数.编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小.
【样例】
输入:
n=178543
s =4
输出:
最后剩下的最小数:13 .
【问题描述】
通过键盘输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序,将组成一个新的正整数.编程对给定的n和s,寻找一种方案,使得剩下的数字组成的新数最小.
【样例】
输入:
n=178543
s =4
输出:
最后剩下的最小数:13 .
这是我编好的程序,不过有点暴力,呵呵.#include <stdio.h>#include <math.h>int count(char *n, int s){ int i, j, t, x, min, sum; t = strlen(n); min = 9999999;///输入的数最大不超过9999999 for(x=0; x<=t-s; x++)///从头开始,计算每次跳过s位后的数据,吧最小的存起来 { sum=0; for(i=0; i<t; i++) { if(i>=x && i<x+s)///跳过其中的s位 { continue; } sum = sum*10 + (n[i]-'0'); } if(sum<min) min=sum; } return min;}int main(){ char n[12];///把n设置成字符串,便于计算其长度 int s, i, j; while(scanf("%s %d", n, &s)==2) { printf("%d\n", count(n, s)); }}
c语言删数问题【问题描述】通过键盘输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序,将组成一个新的正整数
输入一个N位高精度的正整数,去掉其中任意K个数字后剩下的数字按原左右次序组成一个新的正整数.
给出一个多位数N,从中删除S个数字,要求删除S个数字后,将剩下的数字按原左右次序组成一个新的正整数,使
C语言编程问题 从键盘输入一个小于六位数的正整数,按照相反的顺序输出各位上的数字.
任意给出一个正整数N,找一个正整数M,使得N*M的值的数字由0,1,...C组成,且这些数字最少出现一次.
从键盘输入一个正整数n,计算该数的个位数字之和并输出.
C语言数字求和问题描述给定一个正整数a,以及另外的5个正整数,这5个整数中,小于a的整数的和是多少?输入输入一行,只包括
c语言,从键盘输入一个3位数的正整数,要求先后输出该数的百位数字与个位数字,各占一行
c语言求解.从键盘输入一个正整数N,再输入N个整数,按从小到大的顺序输出.
在正整数A的右边添上3个数字,组成一个新数,这个新数等于从1到A的所有正整数之和,求数A.
有一个两位正整数,其数字和为n,若将十位数上的数字与个位上的数字交换位置,组成一个新的两位数,求新两位数与原两位数之和?
有一个两位正整数,其数字和为n,若将十位上的数字与个位上的数字交换位置,组成一个新的两位数,求新两位数与原两位数之和.