正在载入在线练习界面,本页内容可直接阅读…
AK CSP › NOIP 普及 2014 第一轮真题 › 第 30 题
NOIP 普及 2014 第一轮 第 30 题:数字删除:第 4 空
题目
完善程序:
(数字删除) 下面程序的功能是将字符串中的数字字符删除后输出。请填空。(每空 3 分,共 12 分)
#include <iostream>
using namespace std;
int delnum( char *s )
{
int i, j;
j = 0;
for ( i = 0; s[i] != '\0'; i++ )
if ( s[i] < '0' ① s[i] > '9' )
{
s[j] = s[i];
②;
}
return(③);
}
const int SIZE = 30;
int main()
{
char s[SIZE];
int len, i;
cin.getline( s, sizeof(s) );
len = delnum( s );
for ( i = 0; i < len; i++ )
cout << ④;
cout << endl;
return(0);
}
本小题
④处应填( )
答案
s[i]
题解
考点定位
本题(数字删除第④空)考「保留字符来源」,对应大纲 4.2.1 字符串(难度【1】)。
解题过程
④处写入的是原串当前字符:
``cpp s[j] = s[i]; ``
答案:s[i]。
易错提醒
① 读指针 i 扫全串、写指针 j 只存合法字符;② i 始终 ≥ j(原地压缩安全)。
真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1
京公网安备11010502062986号