编程题 请编写一个函数(function)。 我们工作里使用的的语言是PHP,希望阁下能以PHP作答。若有困难,亦可使用其他语言完成。(如C#、Java、C++、Python、Perl、Ruby等) 函数的要求是这样: 输入参数–一个字符串,返回一个字符串。 输入是一句英文句子,只有英
编程题
请编写一个函数(function)。
我们工作里使用的的语言是PHP,希望阁下能以PHP作答。若有困难,亦可使用其他语言完成。(如C#、Java、C++、Python、Perl、Ruby等)
函数的要求是这样:
输入参数–一个字符串,返回一个字符串。
输入是一句英文句子,只有英文字(a-z, A-Z)、每个字之间仅以一个空格分格,前后没有空格。
返回的是要把每一个字的字母顺序倒转写,但字的顺序和字母的大小写位置则保持不変。
例:
输入参数
This is an Apple on eBay
返回
Siht si na Elppa no yAbe
(如eBay因为是第二个字母大写,倒写后保持第二个字母的大写。)
我编写的程序:
<?php
function getNewStr($str){
$str_arr = explode(' ',$str);
foreach( $str_arr as $key=>$value){
$str_arr[$key] = getNewStrExtra($value);
}
$new_str = implode(' ',$str_arr);
return $new_str;
}
function getNewStrExtra($str){
$length = strlen($str);
for($i = 0;$i<$length;$i++){
$extra_arr[] = substr($str, $i , 1);
}
foreach ($extra_arr as $key => $value) {
$ord_v = ord($value);
if($ord_v >= 60 && $ord_v <=90){
$flag = $key;
}
}
$return_arr = array_reverse($extra_arr);
foreach ($return_arr as $key => $value) {
$return_arr[$key] = strtolower($value);
}
if(isset($flag)){
$return_arr[$flag] = strtoupper($return_arr[$flag]);
}
$return_str = implode('', $return_arr);
return $return_str;
}
$str='This is an Apple on eBay';
echo getNewStr($str);
?>
希望有更好更高效的方法分享出来!
一套专业的网上书店程序,可以作为新华书店及大中型书店网上销售的首选,满足在线支付及汇款确认机制。功能简介:图书分类、查询、排行、最新、特价、关注排行、销售排行,新闻系统、汇款确认机制、求购书籍、在线咨询、热门图书定义、全站广告后台管理、后台采用WEBEDIT编辑器、集成"支付宝"在线支付等...v3.5版特殊功能说明(前台):1.自带5种风格主题。2.友好的页面提示(对网站全部
0
原文地址:一道PHP面试的编程题分享, 感谢原作者分享。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号